Local signal-to-noise peak detection

ABSTRACT

Biometric sensor systems are provided for identifying fundamental heart rate harmonics within noisy sensor signals. The system calculates a local signal-to-noise ratio for one or more identified frequency bands received in a biometric signal. The identified frequency bands are ranked based upon the calculated local signal-to-noise ratio. The fundamental heart rate is identified based upon the ranking of the identified frequency bands.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to and the benefit of U.S. ProvisionalApplication Ser. No. 62/348,057 entitled “LOCAL SIGNAL-TO-NOISE PEAKDETECTION”, filed on Jun. 9, 2016, the entire contents of which isincorporated by reference herein in its entirety.

BACKGROUND

Computers and computing systems have affected nearly every aspect ofmodern living. Computers are generally involved in work, recreation,healthcare, transportation, entertainment, household management, etc.

As computer technology has increasingly become more compact andaffordable, users have sought out ways to incorporate the technologyinto their daily lives. For example, smart phones and smart watchesprovide users with constant notifications, Internet access, and otherrelated features. In conjunction with the widespread adoption of smartphones and smart watches, many users have also adopted various biometrictracking systems that are integrated within various digital devices,such as smart watches.

Many biometric trackers include the capability to monitor a user's heartrate and/or blood oxygen level. Conventional biometric tracking systemsmay utilize pulse oximetry technology to gather heart-rate andblood-oxygen data through the use of optical emitters and correspondingoptical receivers. While professional-level pulse oximetry systems, suchas those in hospitals, have been known and used for some time, mobilesystems, such as those found in smart watches, are associated withvarious novel technical challenges.

For example, these mobile pulse oximetry systems are oftenbattery-powered and as such must operate within a much more powerconstrained environment than professional-level pulse oximetry systems,which are typically powered through a power outlet. Similarly, mobilepulse oximetry systems are capable of being worn while a user goes abouttheir normal daily activities. In contrast, hospital-based systems arepredominately attached to patients who are lying in hospital beds. Datasignals received throughout a user's daily activities typically includemore noise and distortion than the signals received from users who arelying in hospital beds. Additionally, as mentioned above, mobilebiometric tracking systems must process and analyze the receive signalsusing processors that are power constrained.

Accordingly, there are many technical challenges to overcome withinmobile pulse oximetry systems. The subject matter claimed herein is notlimited to embodiments that solve any disadvantages or that operate onlyin environments such as those described above. Rather, this backgroundis only provided to illustrate one exemplary technology area where someembodiments described herein may be practiced.

BRIEF SUMMARY

Embodiments disclosed herein include a system that computes a localsignal-to-noise ratio for one or more identified peaks within afrequency-domain biometric signal. Based upon the computed localsignal-to-noise ratio, the system ranks various frequency bands. Thesystem identifies the best rated frequency band as the fundamentalheart-rate within the signal.

Disclosed embodiments include a computer system for identifyingfundamental heart rate harmonics within noisy sensor signals. The systemincludes one or more processors and one or more computer-readable mediahaving stored thereon executable instructions that when executed by theone or more processors configure the computer system to perform variousacts. For example, the system receives, at a sensor input interface,biometric signal data from a sensor in contact with a user.

The system then extracts, using a computer processor, a frequency-domainbiometric signal from the biometric signal data. Using thefrequency-domain biometric signal, the system identifies a candidatefrequency band within the frequency-domain biometric signal. The systemalso identifies one or more harmonics associated with the candidatefrequency band.

The system then generates a summed local signal value by summing anamplitude of the candidate frequency band with amplitudes of each of theone or more harmonics. Additionally, the system generates a summed localnoise value by summing amplitudes associated with signals that occurbetween the one or more harmonics. Further, the system calculates acandidate figure of merit based upon the summed local signal value andthe summed local noise value. The system then identifies a fundamentalharmonic within the frequency-domain biometric signal based upon thecandidate figure of merit.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

Additional features and advantages will be set forth in the descriptionwhich follows, and in part will be obvious from the description, or maybe learned by the practice of the teachings herein. Features andadvantages of the invention may be realized and obtained by means of theinstruments and combinations particularly pointed out in the appendedclaims. Features of the present invention will become more fullyapparent from the following description and appended claims, or may belearned by the practice of the invention as set forth hereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to describe the manner in which the above-recited and otheradvantages and features can be obtained, a more particular descriptionof the subject matter briefly described above will be rendered byreference to specific embodiments which are illustrated in the appendeddrawings. Understanding that these drawings depict only typicalembodiments and are not therefore to be considered to be limiting inscope, embodiments will be described and explained with additionalspecificity and detail through the use of the accompanying drawings inwhich:

FIG. 1 illustrates an embodiment of a system for identifying fundamentalheart rate harmonics within noisy sensor signals.

FIG. 2 illustrates an embodiment of a flow chart for identifyingfundamental heart rate harmonics within noisy sensor signals.

FIG. 3 illustrates an embodiment of a frequency-domain graph of a noisybiometric signal.

DETAILED DESCRIPTION

Embodiments disclosed herein include methods, systems, and apparatusesthat compute a local signal-to-noise ratio for one or more identifiedpeaks within a frequency-domain biometric signal. Based upon thecomputed local signal-to-noise ratio, the system ranks various potentialfrequency bands. The system identifies the best rated frequency band asthe fundamental heart-rate within the signal.

The following discussion now refers to a number of methods and methodacts that may be performed. Although the method acts may be discussed ina certain order or illustrated in a flow chart as occurring in aparticular order, no particular ordering is required unless specificallystated, or required because an act is dependent on another act beingcompleted prior to the act being performed.

Embodiments disclosed herein include methods, systems, and apparatusesthat identify biometric readings within noisy sensor signals. Forexample, disclosed embodiments compute a local signal-to-noise ratio forone or more identified peaks within a frequency-domain biometric signal.Based upon the computed local signal-to-noise ratio, the system ratesvarious potential peaks. The system identifies the best rated peaks asthe fundamental heart-rate within the signal

Turning now to the figures, FIG. 1 depicts a sensor input softwareapplication 100 that comprises various depicted modules and components.For example, the sensor input software application 100 comprises aprocessing module 110, a sensor driver interface 112, a sensor inputinterface 116, and an output interface 114. One will understand,however, that the depicted modules and components are provided only forthe sake of example and clarity and that in additional or alternativeembodiments different combinations and descriptions of components andmodules can be equivalently we used.

The sensor input software application 100 is configured to communicateto a biometric sensor 170, process received information, and provide theprocessed information to a user. In at least one embodiment, theprocessing module 110 communicates, to a sensor driver interface 112,instructions that cause the sensor driver interface 112 to activate alight-emitting diode 150. The sensor driver interface 112 may comprise avoltage controller, a current controller, or a conventionalcommunications port, such as a USB interface, a serial interface, or anyother known interface.

A photodetector 160 receives the emitted light, either directly throughtransmittance or indirectly through reflectance, after the light hasinteracted with the user's tissue. The photodetector 160 communicatesgathered light data to a sensor input interface 116 within the sensorinput software application 100. As used herein, the sensor inputinterface 116 may comprise a multi-meter or a conventionalcommunications port, such as a USB interface, a serial interface, or anyother known interface.

The processing module 110 processes the received light data usingvarious methods that will be described more fully herein. For example,the processing module 110 identifies desirable information within thereceived flight data and excludes noise and distortion that wouldotherwise result in incorrect biometric readings. After processing thelight data, the processing module 110 communicates the processed lightdata to the output interface 114. In various additional or alternativeembodiments, the output interface 114 communicates with various externaldevices. For example, the output interface 114 communicates with adisplay 120 that is accessible to the user. Display 120 may comprise asmart phone display, a smart watch display, a standard computer display,an audio speaker, an actuator, or any other interface capable ofproviding information and/or notifications to the user.

Additionally, the output interface 114 can communicate informationthrough a network 130 to a server 140. As used herein, the server 140may be configured to store the receive information, process the receivedinformation, display the received information, or otherwise handle thereceived information. For example, in at least one of implementation,the processing module 110 only partially processes the received lightdata, and the server 140 completes the processing. As such, in at leastone embodiment, the sensor input software application 100 may comprise adistributed system where portions of the sensor input softwareapplication 100 are executed on various different, and possiblygeographically remote, computer systems. In contrast, in at least oneembodiment, the sensor input software application 100 is executed whollywithin a mobile computing device that is in direct communication withthe light emitting diode 150 and the photodetector 160.

In any case, the sensor input software 100 of FIG. 1 is capable ofreceiving and processing biometric signals from a biometric sensor. Inat least one embodiment, it is necessary to identify specific data fromwithin a noisy biometric signal. For instance, when receiving abiometric signal from a pulse-oximeter, it may be desirable to identifya fundamental heart frequency within the noisy biometric signal. Thefundamental heart frequency may be associated with the heart rate of auser. In a noisy biometric signal, however, there may exist multiplepotential frequency-domain peaks scattered throughout the noisebiometric signal. Some of the peaks may be wholly associated with noise;while other peaks may be associated with harmonics caused by the user'sheartbeat. As such, the sensor input software 100 must distinguishbetween noise-induced peaks and harmonics. Accordingly, embodiments ofthe sensor input software 100 are capable of identifying a fundamentalharmonic within a biometric signal, where the fundamental harmonic isassociated with a user's heart rate.

For example, FIG. 2 illustrates an embodiment of a flow chart for method200 of identifying fundamental heart rate harmonics within noisy sensorsignals. In particular, FIG. 2 depicts a biometric signal, in thisexample a photoplethysmogram (“PPG”), being processed in a fast Fouriertransform (“FFT”) process 210. The resulting FFT signal is thenprocessed through a signal whitening process 220 that applies somefunction F(n) to each bin within the resulting FFT signal. In at leastone embodiment, the signal whitening process 220 comprises multiplyingthe magnitude of each bin within the resulting FFT signal by its binindex in order to give more weight to higher harmonics.

Following the signal whitening process 220, the whitened signal isprocessed through a peak detection process 230. Various differentmethods may be utilized to identify respective peaks within the whitenedsignal. As a non-limiting example, peaks may be identified byidentifying a peak value within a set of adjacent bins. For example, anybin that is associated with a higher value than both of its respectiveadjacent bins may be designated as a peak.

Additionally, in at least one embodiment, the peak detection process 230groups multiple adjacent bins into a frequency band. For instance, aparticular signal may bleed into adjacent bins. As such, the signaldetection process 230 groups adjacent bins together in association witha single signal based upon attributes of each grouped bin. For example,the signal detection process 230 may group a predefined number of binstogether with each respective signal. Regardless of the method used toidentify the signal, the signal detection process 230 identifies variouspeaks (i.e. potential fundamental harmonics) for processing.

Once various frequency bands are identified, the identified bands areprovided to a local signal-to-noise ratio (“SNR”) process 250. In atleast one embodiment, the local SNR for each identified peak is computedby identifying the first M harmonics of each peak, where M is someinteger (for example three). One of skill in the art will understandthat there are several ways for harmonics to be identified. For example,as a non-limiting embodiment, the local SNR process 240 identifies theharmonics by identifying signal components that are one, two, three,etc. times the frequency of each respective frequency band (i.e., theproposed fundamental harmonic).

Once the harmonics are identified, the harmonic bins for each respectiveidentified frequency band are all summed to form a total local signalvalue “S”. The signal values between the first and harmonics that werenot included as part of the signal S are then summed to compute a totallocal noise value “N” for each respective identified peak. In at leastone embodiment, the local SNR process 240 also includes bins of a lowerfrequency than the proposed fundamental harmonic or higher frequencythan the Mth harmonic in the noise calculation. For example, if theproposed fundamental harmonic (i.e., identified peak) is within bin n,then the local SNR process 240 includes bins down to n/2 within thetotal noise calculation. In at least one embodiment, including the binsdown to n/2 bin within the total noise calculation assists inidentifying if the n/2 bin is in fact the fundamental harmonic.

Once the total signal values and total noise values for each respectiveidentified frequency bands are computed, they are normalized by dividingeach by the number of respective bins summed. One will understand, thisprovides an average local signal value across each respective signalband and associated harmonic bins and an average local noise valueacross all intermediate bins between the respective peak and harmonicbins. The local SNR process 240 then computes the SNR for eachidentified peak by dividing the average local signal value by theaverage noise value associated with each identified peak. Once allproposed peaks have had a local SNR calculated, the proposed peaks areall ranked based upon local SNR values. The bin with the highest localSNR value is identified as the fundamental harmonic.

For example, FIG. 3 illustrates an embodiment of a frequency-domaingraph of a noisy biometric signal 300. In particular, FIG. 3 depicts adiscrete fast Fourier transform of an exemplary biometric signal. Thedepicted noisy biometric signal 300 comprises significant noisecomponents. One will understand that the depicted noisy biometric signal300 is merely provided for the sake of example and clarity and does notnecessarily reflect a received biometric signal.

As explained above, the sensor input software application 100 canidentify one or more candidate peaks within the frequency domainbiometric signal 300. For example, the sensor input software application100 may identify as potential peaks at least peak 310 and peak 320.Additionally, using the methods described above, the sensor inputsoftware application 100 identifies various harmonics associated witheach frequency band. For instance, the sensor input software application100 may identify harmonics 312 a, 312 b, 312 c, and 312 d as beingassociated with frequency band 310.

The sensor input software application 100 then calculates a total signalby summing the values of frequency band 310, first harmonic 312 a,second harmonic 312 b, third harmonic 312 c, and fourth harmonic 312 d.After calculating the total signal value, the sensor input softwareapplication 100 calculates an average total signal by dividing thepreviously calculated total signal by the number of bins associated withthe frequency band and harmonics, or in this case by five.

The sensor input software application 100 then calculates a total noiseby summing the signal values between peak 310 and the first harmonic 312a, and between each subsequent harmonic. The sensor input softwareapplication 100 divides the total noise by the number of bins utilizedin calculating the total noise. Using the calculated information, thesensor input software application 100 calculates a figure of merit basedupon the summed local signal value (e.g., the average local signalvalue) and the total noise value (e.g., the average local noise value).To calculate the figure of merit, in at least one embodiment, the sensorinput software application 100 divides the average local signal value bythe average local noise value.

The sensor input software application 100 then continues to perform theabove calculations for each identified potential frequency band withinthe noisy biometric signal 300. For example, the sensor input softwareapplication 100 identifies potential harmonics that are associated withfrequency band 320 and calculates a figure of merit for frequency band320 using the above-described method. Once the sensor softwareapplication 100 calculates respective figures of merit for eachidentified frequency band, the sensor input software application 100identifies a fundamental harmonic of the biometric signal based upon therespective frequency band with the highest candidate figure of merit.

Accordingly, in at least one embodiment, disclosed embodiments calculatea local signal-to-noise ratio for one or more identified frequency bandswithin a noisy biometric signal 300. The disclosed embodiments canidentify a fundamental harmonic of the biometric signal based upon aranking of the figures of merit for various identified peaks.

Further, the methods may be practiced by a computer system including oneor more processors and computer-readable media such as computer memory.In particular, the computer memory may store computer-executableinstructions that when executed by one or more processors cause variousfunctions to be performed, such as the acts recited in the embodiments.

Embodiments of the present invention may comprise or utilize a specialpurpose or general-purpose computer including computer hardware, asdiscussed in greater detail below. Embodiments within the scope of thepresent invention also include physical and other computer-readablemedia for carrying or storing computer-executable instructions and/ordata structures. Such computer-readable media can be any available mediathat can be accessed by a general purpose or special purpose computersystem. Computer-readable media that store computer-executableinstructions are physical storage media. Computer-readable media thatcarry computer-executable instructions are transmission media. Thus, byway of example, and not limitation, embodiments of the invention cancomprise at least two distinctly different kinds of computer-readablemedia: physical computer-readable storage media and transmissioncomputer-readable media.

Physical computer-readable storage media includes RAM, ROM, EEPROM,CD-ROM or other optical disk storage (such as CDs, DVDs, etc.), magneticdisk storage or other magnetic storage devices, or any other mediumwhich can be used to store desired program code means in the form ofcomputer-executable instructions or data structures and which can beaccessed by a general purpose or special purpose computer.

A “network” is defined as one or more data links that enable thetransport of electronic data between computer systems and/or modulesand/or other electronic devices. When information is transferred orprovided over a network or another communications connection (eitherhardwired, wireless, or a combination of hardwired or wireless) to acomputer, the computer properly views the connection as a transmissionmedium. Transmissions media can include a network and/or data linkswhich can be used to carry or desired program code means in the form ofcomputer-executable instructions or data structures and which can beaccessed by a general purpose or special purpose computer. Combinationsof the above are also included within the scope of computer-readablemedia.

Further, upon reaching various computer system components, program codemeans in the form of computer-executable instructions or data structurescan be transferred automatically from transmission computer-readablemedia to physical computer-readable storage media (or vice versa). Forexample, computer-executable instructions or data structures receivedover a network or data link can be buffered in RAM within a networkinterface module (e.g., a “NIC”), and then eventually transferred tocomputer system RAM and/or to less volatile computer-readable physicalstorage media at a computer system. Thus, computer-readable physicalstorage media can be included in computer system components that also(or even primarily) utilize transmission media.

Computer-executable instructions comprise, for example, instructions anddata which cause a general-purpose computer, special purpose computer,or special purpose processing device to perform a certain function orgroup of functions. The computer-executable instructions may be, forexample, binaries, intermediate format instructions such as assemblylanguage, or even source code. Although the subject matter has beendescribed in language specific to structural features and/ormethodological acts, it is to be understood that the subject matterdefined in the appended claims is not necessarily limited to thedescribed features or acts described above. Rather, the describedfeatures and acts are disclosed as example forms of implementing theclaims.

Those skilled in the art will appreciate that the invention may bepracticed in network computing environments with many types of computersystem configurations, including, personal computers, desktop computers,laptop computers, message processors, hand-held devices, multi-processorsystems, microprocessor-based or programmable consumer electronics,network PCs, minicomputers, mainframe computers, mobile telephones,PDAs, pagers, routers, switches, and the like. The invention may also bepracticed in distributed system environments where local and remotecomputer systems, which are linked (either by hardwired data links,wireless data links, or by a combination of hardwired and wireless datalinks) through a network, both perform tasks. In a distributed systemenvironment, program modules may be located in both local and remotememory storage devices.

Alternatively, or in addition, the functionality described herein can beperformed, at least in part, by one or more hardware logic components.For example, and without limitation, illustrative types of hardwarelogic components that can be used include Field-programmable Gate Arrays(FPGAs), Program-specific Integrated Circuits (ASICs), Program-specificStandard Products (ASSPs), System-on-a-chip systems (SOCs), ComplexProgrammable Logic Devices (CPLDs), etc.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or characteristics. The described embodimentsare to be considered in all respects only as illustrative and notrestrictive. The scope of the invention is, therefore, indicated by theappended claims rather than by the foregoing description. All changeswhich come within the meaning and range of equivalency of the claims areto be embraced within their scope.

What is claimed is:
 1. A computer system for identifying fundamentalheart rate harmonics within noisy sensor signals, comprising: one ormore processors; and one or more computer-readable media having storedthereon executable instructions that when executed by the one or moreprocessors configure the computer system to perform at least thefollowing: receive, at a sensor input interface, biometric signal datafrom a sensor in contact with a user; extract, using a computerprocessor, a frequency-domain biometric signal from the biometric signaldata; identify a candidate frequency band within the frequency-domainbiometric signal; identify one or more harmonics associated with thecandidate peak; generate a summed local signal value by summing anamplitude of the candidate peak with amplitudes of each of the one ormore harmonics; generate a summed local noise value by summingamplitudes associated with signals that occur between the one or moreharmonics; calculate a candidate figure of merit based upon the summedlocal signal value and the summed local noise value; and identify afundamental harmonic within the frequency-domain biometric signal basedupon the candidate figure of merit.
 2. The computer system of claim 1,wherein the biometric signal comprises a photoplethysmogram.
 3. Thecomputer system of claim 1, wherein the biometric sensor comprises aphotodetector.
 4. The computer system of claim 1, wherein the executableinstructions include instructions that are executable to configure thecomputer system to: identify another frequency band within thefrequency-domain biometric signal; identify one or more other harmonicsassociated with the other frequency band; generate another summed localsignal value by summing an amplitude of the other frequency band withamplitudes of each of the one or more other harmonics; generate anothersummed local noise value by summing amplitudes associated with signalsthat occur between the one or more other harmonics; calculate anothercandidate figure of merit based upon the other summed local signal valueand the other summed local noise value; rank the candidate peak and theother peak based upon their respective figure of merit values; andidentify the fundamental harmonic within the frequency-domain biometricsignal by identifying a frequency band associated with the highestranked figure of merit.
 5. A method for identifying fundamental heartrate harmonics within a noisy photoplethysmogram, the method comprising:receiving, at a sensor input interface, a noisy photoplethysmogram froma photodetector in contact with a user; extracting, using a Fast-FourierTransform, a frequency-domain biometric signal from the noisyphotoplethysmogram; identifying a first candidate frequency band withinthe frequency-domain biometric signal; calculating a first candidatefigure of merit based upon a first summed local signal value and a firstsummed local noise value, wherein: the first summed local signal valuecomprises a summation of an amplitude of the first candidate peak withamplitudes of each of one or more first harmonics of the first candidatefrequency band, and a first summed local noise value comprises asummation of amplitudes associated with signals that occur between theone or more first harmonics; identifying a second candidate frequencyband within the frequency-domain biometric signal; calculating a secondcandidate figure of merit based upon a second summed local signal valueand a second summed local noise value, wherein: the second summed localsignal value comprises a summation of an amplitude of the secondcandidate frequency band with amplitudes of each of one or more secondharmonics of the second candidate frequency band, and a second summedlocal noise value comprises a summation of amplitudes associated withsignals that occur between the one or more second harmonics; ranking thefirst candidate frequency band and second candidate frequency band basedupon the first candidate figure of merit and the second candidate figureof merit; and identifying a fundamental harmonic heartbeat associatedwith the user within the noisy photoplethysmogram based upon theranking.
 6. The method as recited in claim 5, wherein extracting thefrequency-domain biometric signal from the noisy photoplethysmogramcomprises generating the frequency-domain biometric signal within aplurality of bins.